As computers have gotten faster, less expensive, and more functional, they have also gotten much more complicated, leading to a situation in which the productivity bottleneck is no longer the computer, but the users themselves and their ability to effectively use the computer system. Non-expert users regularly encounter tasks that they do not know how to perform, such as configuring their home router, removing a virus, or even just emailing a photo.
Many users do not have access to free or inexpensive technical support, and hence their first, and often only, resort is to perform a web search. Such web searches, however, often lead to a disparate set of user forums written in ambiguous language. They rarely make clear which user configurations are covered by a particular solution; descriptions of different problems overlap; and many documents contain conjectured solutions that may not work. The net result is that users spend an unacceptable amount of time manually working through large collections of documents trying solutions that often fail to help them perform their task. The situation is particularly difficult for non-expert users who often struggle even with well-written documentation.
The main limitation of existing on-line technical help is that it only documents how a task was performed, often only for one particular system configuration. A typical user would prefer a system that automatically performs the task for him, taking into account his machine configuration and global preferences, and asking the user only for information which cannot be automatically accessed from his computer, such as his password or which photo he would like to e-mail.
Some automation tools exist for particularly arduous tasks. One such example is the Mail Merge wizard in Microsoft Word. Today, however, these automation scripts have to be meticulously programmed by experts, limiting their applicability to only those tasks most in need of automation. For example, Microsoft has recently started a team to automate the solution documents on their knowledge-base web site. This website is currently known as the Microsoft Fix It Solution Center. Each of the automated scripts found on this website is a program handwritten by an expert. As a result, in 6 months of their work, they have automated only about 150 of the hundreds of thousands of knowledgebase articles. It is obvious that expert-based automation is slow and expensive, and hence, unlikely to cover the majority of problems that users encounter.
It would be beneficial if there existed automated tools that performed computer-based tasks on behalf of the user. Additionally, it would be advantageous if this tool were crowd-sourced, thereby allowing the number of tasks that can be performed to grow quickly. It would be further advantageous if the tool could verify the crowd-sourced solutions to verify their correctness, and to minimize the steps required.